package 程序员面试金典;

public class 配对交换 {

    public int exchangeBits(int num) {
        //16进制5是0101 a是1010，与运算的话刚好取了奇数位和偶数位，再进行移位（也就是乘二除二），相加。
        return (((num & 0x55555555) << 1) + ((num & 0xaaaaaaaa) >> 1));
    }
}
